#include <string>

/** This interface defines the common methods that ANY class should implement if that class
  * will be used to store a pattern or image.
  */

class IRuleBase
{
public:

	virtual int getRuleNum() const = 0;
	virtual int getRuleSize() const = 0;
	virtual bool hasFixedSizedRules() const = 0;
	virtual int getNetInfoSizeInBits() const = 0;
	virtual void loadFromBitmap (std::string fileName, int startBit, int endBit) = 0;
};